<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
	xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd">

	<bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource">
		<property name="driverClassName" value="com.mysql.jdbc.Driver"></property>
		<property name="url" value="jdbc:mysql://localhost:3306/test"></property>
		<property name="username" value="root"></property>
		<property name="password" value="55555"></property>
	</bean>

	<bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
		<!-- 该属性用来指定MyBatis的XML配置文件路径,跟Spring整合时，编写MyBatis映射文件的目的无非是配置一下typeAlias、setting之类的 
			元素。不用在其中指定数据源，或者事务处理方式。就算配置了也会被忽略。因为这些都是使用Spring中的配置 。当然如果你不打算添加typeAlias 
			之类的设置的话，你连MyBatis的配置文件都不用写，更不用配置这个属性了 -->
		<property name="configLocation" value="classpath:MyBatis-Configuration.xml"></property>
		<property name="dataSource" ref="dataSource" />
		<!-- 该配置文件用来指定Mapper映射文件的位置 ，如果映射文件与相应的接口同名，且在同一路径下，那么可以不配置该选项 -->
		<!--<property name="mapperLocations" value="src/UserMapper.xml"/> -->
	</bean>

	<bean id="userDao" class="org.mybatis.spring.mapper.MapperFactoryBean">
		<property name="mapperInterface" value="com.netease.dao.UserDao"></property>
		<property name="sqlSessionFactory" ref="sqlSessionFactory"></property>
	</bean>

	<bean id="userService" class="com.netease.service.UserServiceImpl">
		<property name="userDao" ref="userDao"></property>
	</bean>

	<!-- 
		注册Mapper方式一 
		<bean id="userMapper" class="org.mybatis.spring.mapper.MapperFactoryBean"> 
			<property name="mapperInterface" value="org.hyn.maper.UserMapper"/> 
			<property name="sqlSessionFactory" ref="sqlSessionFactory"/> 
		</bean> 
	-->

	<!-- 注册Mapper方式二：也可不指定特定mapper，而使用自动扫描包的方式来注册各种Mapper ，配置如下： -->
	<bean class="org.mybatis.spring.mapper.MapperScannerConfigurer">
		<property name="basePackage" value="com.netease.dao" />
	</bean>

</beans>